论文名称:A Survey on Deep Learning for Named Entity Recognition
论文链接:https://arxiv.org/abs/1812.09449
目前已被数据挖掘顶刊 TKDE 收录,先膜拜!
目录
1. 全文简介
2. NER任务简介
3. NER标注语料库(公开评测集)
4. off-the-shelf NER工具
5. 评价指标
6. 序列标注标签方案
7. 四类NER常用方法
8. 基于规则的NER方法
9. 基于无监督学习的NER方法
10. 基于特征的有监督学习NER方法(传统机器学习)
11. 基于深度学习的NER方法
11.1 深度学习在NER任务上的优势
11.2 分布式表示
11.3 上下文编码
11.3.1 CNN
11.3.2 循环神经网络 RNN
11.3.3 递归神经网络
11.3.4 Transformer
11.3.5 神经语言模型
11.4 标签解码
12. 其他研究方向的NER方法13. NER任务的挑战与机遇
13.1 面临的挑战
13.2 机遇与未来可研究方向
全文简介
从摘要中可以看出全文的介绍路线分为五部分,具体为: 1. NER 任务的常用标注语料2. 现成的 NER 工具3. 三个角度介绍现有研究工作:分布式嵌入表示,文本编码,标签解码;4. 其他研究方向的深度学习方法做 NER5. NER 面临的挑战与机遇
NER简介
NER 的研究意义这里不多加赘述,任何一篇 NER 相关的论文在引言中都会有所介绍。 一句话总结该任务:命名实体识别(Named Entity Recognition, NER)是指从自由文本中识别出属于预定义类别的文本片段。 NER 任务最早由第六届语义理解会议(Message Understanding Conference)提出,当时仅定义一些通用实体类别,如地点、机构、人物等。目前命名实体识别任务已经深入各种垂直领域,如医疗、金融等。在该论文中将实体归为两类:generic(通用类)和 domain-specific(特定领域类)。
NER标注语料库(公开评测集)
论文对现有公开评测任务使用的 NER 语料库进行了汇总,包括链接地址、类别个数以及语料类型。如下图所示:
此外,论文也给出了评测集对应的 SOTA 模型及其性能表现,这个感觉很好。这里也推荐一个 SOTA 模型仓库 paperswithcode,里面收录了 SOTA 模型源码以及论文介绍,感觉还是不错。 link: https://paperswithcode.com/
OFF-THE-SHELF NER工具
论文对学术界和工业界一些 NER 工具进行汇总,工具中通常都包含预训练模型,可以直接在自己的语料上做实体识别。不过一般研究使用的话(所定义实体类别与工具预定的不符),还需要依据待抽取领域语料再训练模型,或重新训练模型。
评价指标 (Evaluation Metric)
论文将 NER 评测指标 P R F1 分为了两类介绍,这也是比赛和论文中通用评测方式: 1. Exact-match严格匹配,范围与类别都正确。其中 F1 值又可以分为 macro-averaged 和 micro-averaged,前者是按照不同实体类别计算 F1,然后取平均;后者是把所有识别结果合在一起,再计算 F1。这两者的区别在于实体类别数目不均衡,因为通常语料集中类别数量分布不均衡,模型往往对于大类别的实体学习较好。 2. relaxed match 宽松匹配,简言之,可视为实体位置区间部分重叠,或位置正确类别错误的,都记为正确或按照匹配的位置区间大小评测。
句子:西南交通大学位于成都。预定义实体类别:学校、地点。上述句子按照BIOES方案标签:B-学校 I-学校 I-学校 I-学校 I-学校 E-学校 O O B-地点 E-地点
四类常用NER方法
1. 规则模板,不需要标注数据,依赖于人工规则;2. 无监督学习方法,不需要标注数据,依赖于无监督学习算法;3. 基于特征的有监督学习算法,依赖于特征工程;4. 深度学习方法。 论文简要地介绍了前三种方法,着重地介绍第四种方法。如果要看前三种方法的综述可以去看 Nadeau and Sekine 07 年的综述 A survey of named entity recognition and classification,13 年 Marrero 综述 Named entity recognition: fallacies, challenges and opportunities,15 年 Potey 综述 Approaches to named entity recognition: a survey。 18年出的一篇综述比较有意思,主题是复杂实体识别,也就是重叠实体或者非连续性实体。最近对此进行了一些研究,先挖个坑,后续整理一下工作,再做分享。
论文标题:Recognizing complex entity mentions: A review and future directions
论文链接:https://www.aclweb.org/anthology/P18-3006/
还有两篇 18 年较新的综述,A survey on recent advances in named entity recognition from deep learning models 和 Recent named entity recognition and classification techniques: A systematic review。 ps: 偷懒!这里就不给出论文的链接了。 对于论文中出现的两个名词 coarse-grained entity 和 fine-grained entity,存在一些疑问。论文中对于两者的定义为:粗粒度实体 coarse-grained entity 一个实体一个类别;细粒度实体 fine-grained entity 一个实体多个类别。 对于这样的分类,感到有些迷惑。细粒度实体在我的理解应该是指预定义实体类别是具有层级,如一级类别人、动物、地点,动物又分为了猫、狗、鸟等。也有可能是我理解不到位。这里贴出原文,欢迎讨论。
Note that the task focuses on a small set of coarse entity types and one type per named entity. We call this kind of NER tasks as coarse-grained NER [10], [11]. Recently, some fine-grained NER tasks [29]–[33] focus on a much larger set of entity types where a mention may be assigned multiple fine-grained types.
基于规则方法
1. 特定领域词典,其中还包括同义林词典;2. 句法词汇模板;3. 正则表达式; 论文列出了一些基于规则的 NER 系统:LaSIE-II, NetOwl, Facile, SAR, FASTUS, and LTG。总的来说,当词汇表足够大时,基于规则的方法能够取得不错效果。但总结规则模板花费大量时间,且词汇表规模小,且实体识别结果普遍高精度、低召回。
Google 的一篇《Attention is all you need》将注意力机制推上新的浪潮之巅,于此同时 transformer 这一不依赖于 CNN、RNN 结构,纯堆叠自注意力、点积与前馈神经网络的网络结构也被大家所熟知。此后的研究证明,transformer 在长距离文本依赖上相较 RNN 有更好的效果。
DEEP ACTIVE LEARNING FOR NAMED ENTITY RECOGNITION:
Since this is a locally normalized model (Andor et al., 2016), it does not require the costly computation of partition function, and it allows us to significantly speed up training compared to using CRFs.
使用指针网络解码,是将 NER 任务当作先识别“块”即实体范围,然后再对其进行分类。指针网络通常是在 Seq2seq 框架中,如下图所示。
其他研究方向的NER方法
下面列出各类研究方向的 NER 方法,若想细致了解每个方向的文献,请移步原文。 1. 多任务学习 Multi-task Learning2. 深度迁移学习 Deep Transfer Learning3. 深度主动学习 Deep Active Learning4. 深度强化学习 Deep Reinforcement Learning5. 深度对抗学习 Deep Adversarial Learning6. 注意力机制 Neural Attention
NER任务的挑战与机遇
13.1 挑战
1. 数据标注2. 非正式文本(评论、论坛发言、tweets 或朋友圈状态等),未出现过的实体。
13.2 机遇与未来可研究方向
1. 多类别实体2. 嵌套实体3. 实体识别与实体链接联合任务4. 利用辅助资源进行基于深度学习的非正式文本 NER(补充一点,知识图谱方向)5. NER模型压缩6. 深度迁移学习 for NER 总结一句,NER 的现有研究较为丰富,想要再开花,选好问题切入点是关键。